Non-volatile storage devices such as flash memory devices have enabled increased portability of data and software applications. Electronic devices such as mobile phones, typically use non-volatile storage devices, such as flash memory devices, for persistent storage of information, such as data and program code that is used by the electronic device. Advances in technology have resulted in increased storage capacities of non-volatile storage devices with reductions in storage device size and cost.
Non-volatile storage devices are conventionally configured to verify integrity of stored data and to preform remedial actions to prevent data corruption. However, if a non-volatile storage device is inactive for an extended period of time, such as in a mobile phone that remains powered off for a number of years, “data retention” errors may accumulate in the stored data due to mechanisms such as charge leakage from memory cells. If a number of accumulated errors exceeds an error correction capability of the non-volatile storage device, there is a risk that the mobile phone may not be able to boot properly when powered on. As a result, non-volatile storage devices are typically designed to ensure data integrity for a specified “worst case” period of inactivity. However, design decisions that enhance data retention of a non-volatile storage device may adversely affect performance characteristics (e.g., latency of data write operations) and endurance characteristics (e.g., “wear” of storage elements that reduces a useful life of the non-volatile storage device) of the non-volatile storage device.